home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Commodore Disk User Volume 2 #1
/
Commodore_Disk_User_Vol.2_1_1988_-.d64
/
windows basic
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
1KB
|
36 lines
300 addr=12500:x=peek(addr):y=peek(addr+1):le=peek(addr+2):de=peek(addr+3)
310 for li=addr+4 to addr+258
320 if chr$(peek(li))="_" then goto 350
330 me$=me$+chr$(peek(li))
340 next li
350 dim screen(1000)
360 xx$="":yy$="":yy=y+1
370 ifle=0orle>=(40-x)orde=0orde>=(22-y)orle<7thenprint"coordinate error":end
380 en=(1024+x+40*y)+le:forldsv=1024+x+40*yto 1024+(x+le)+40*(y+de)-1
390 if ldsv=en then ldsv=ldsv+(40-(x+le))+x:en=en+40
391 let screen(ldsv-1024)=peek(ldsv)
392 next ldsv
393 en=(1024+x+40*y)+le:for ldsv=1024+x+40*y to 1024+(x+le)+40*(y+de)-1
395 if ldsv=en then ldsv=ldsv+(40-(x+le))+x:en=en+40
400 poke ldsv,160
410 next ldsv
420 print"";:for l=1to x+1:printxx$;:nextl
430 for l=1 to y+1:print yy$;:nextl
440 for li=1 to len(me$) step le-2
450 printmid$(me$,li,le-2)
460 print"";:for l=1 to x+1:printxx$;:nextl
470 for l=1 to y+1:printyy$;:nextl
480 for li=1 to len(me$) step le-2
490 printmid$(me$,li,le-2)
500 print"";:for l=1 to x+1:printxx$;:next l
510 next li
520 print"";:for l=1 to x+le-6:printxx$;:next l
530 for l=1to (y+de)-1:printyy$;:next l
540 print"<key>"
550 geta$:if a$="" then 550
560 en=(1024+x+40*y)+le:for ldsv=1024+x+40*y to 1024+(x+le)+40*(y+de)-1
570 if ldsv=en then ldsv=ldsv+(40-(x+le))+x:en=en+40
580 poke ldsv,screen(ldsv-1024)
590 next ldsv
600 print"";